springboot整合MySQL数据库(JPA)
一、POM文件添加依赖
<!--jpa-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!--jdbc-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
二、yml配置文件
主参数
spring.datasource.url 指定JDBC URL.
spring.datasource.username 指定数据源用户名
spring.datasource.password 指定数据源密码
spring.jpa.hibernate.ddl-auto 指定DDL mode (none, validate, update, create, create-drop). 当使用内嵌数据库时,默认是create-drop,否则为none.
spring.jpa.show-sql 是否开启sql的log,默认为: false
参考建议: xixicat SpringBoot配置属性之DataSource
三、配置实体类
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class User {
@Id //主键
@GeneratedValue //主键自增
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
四、JPA实现单表操作
import cn.roylion.myspringboot.entity.User;
import org.springframework.data.repository.CrudRepository;
public interface UserRepository extends JpaRepository<User,Integer> {//此处泛型为映射类型与主键id类型
}
五、JPA实现分页
在UserRepository对象中添加新方法
Page<User> findAll(Pageable pageable);
在service方法中实现分页
int page = 0;
int size = 5;
Pageable pageable = new PageRequest(page,size); //页码从0开始
Page<User> users = userRepository.findAll(pageable);
六、JPA实现排序
在UserRepository对象中添加新方法
Iterable<User> findAll(Sort sort);
在service方法中实现排序
Sort sort = new Sort(Sort.Direction.DESC,"id"); //依据id降序排列
Iterable<User> users = userRepository.findAll(sort);
七、JPA实现事务处理
在方法的上面添加@Transaction注解即可
参考建议: 纯洁的微笑 spring boot(五):spring data jpa的使用
参考建议: wolzq Spring Boot中的事务管理
参考建议: 如莲家园 Spring Data JPA 实例查询
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。